package com.ruoyi.system.service;

import com.ruoyi.system.domain.db.cooperation.ExternalCooperation;
import com.ruoyi.system.domain.db.financial.FinancialEconomic;
import com.ruoyi.system.domain.dto.FinancialEconomicDto;
import com.ruoyi.system.domain.vo.*;

import java.util.Date;
import java.util.List;
import java.util.Map;

public interface IFinancialEconomicService {

    /**
     * 查询订单
     */
    public FinancialEconomicVo selectFinancialEconomicByOrderId(Long orderId);

    /**
     * 查询订单列表
     */
    public List<FinancialEconomicVo> selectFinancialEconomicList(FinancialEconomic financialEconomic);

    /**
     * 新增订单
     */
    public int insertFinancialEconomic(FinancialEconomic financialEconomic);

    /**
     * 修改订单
     */
    public int updateFinancialEconomic(FinancialEconomic financialEconomic);

    /**
     * 批量删除订单
     */
    public int deleteFinancialEconomicByOrderIds(List<Long> orderIds);

    /**
     * 删除订单
     */
    public int deleteFinancialEconomicByOrderId(Long orderId);

    public FinancialEconomic voToDb(FinancialEconomicVo vo);

    public FinancialEconomic getBillByOrderIdAndBillTypeId(Long orderId, Integer billTypeId);

    public <T> List<T> arrayToList(T[] array);

    public Map<String, List<MonthInfo>> getMonthInfo(Date date);

    public Map<String, List<MonthTypeInfo>> getMonthTypeInfo(Date date);

    public DateInfo getDateInfo(Date date);
}
